package lanqiaobei2014;

import java.util.Arrays;

public class _03神奇算式 {
    /**
     * 由4个不一样的数字，组成的一个乘法算式，它们的乘积仍然由这4个数字组成。、
     * 210 x 6 = 1260
     * 8 x 473 = 3784
     * 27 x 81 = 2187
     * 都符合要求。
     * 若是知足乘法交换律的算式算做同一种状况，那么，包含上边已列出的3种状况，一共有多少种知足要求的算式。
     * 请填写该数字，经过浏览器提交答案，不要填写多余内容（例如：列出全部算式）。
     */
    static int ans = 0;
    public static void main(String[] args) {
        for (int i = 1; i < 10; i++) {
            for (int j = 0 ;j < 9 ; j ++){
                if ( i != j){
                    for (int k = 0 ;k < 10 ; k ++) {
                        if (k != i && k != j){
                            for (int l = 0; l < 10; l++) {
                                if (l != i && l != j && l != k){
                                    int src = i * 1000 + j * 100 + k * 10 + l;   //ijkl组成四位数
                                    //验证
                                    if (j != 0){
                                        int r1 = i * (j * 100 + k*10 + l);
                                        if (check(src,r1)){
                                            ans ++;
                                        }
                                    }
                                    if ( k != 0 ){
                                        int r2 = (i * 10 + j) * (k *10 + l);
                                        if ((i * 10 + j) < (k *10 + l) && check(r2,src)){
                                            ans ++;
                                        }
                                    }
                                }
                            }
                        }
                    }
                }
            }
        }
        System.out.println(ans);
    }

    private static boolean check(int src, int r1) {
        String s1 = String.valueOf(src);
        String s2 = String.valueOf(r1);
        char[] chars = s1.toCharArray();
        char[] chars1 = s2.toCharArray();
        Arrays.sort(chars);
        Arrays.sort(chars1);
        return new String(chars).equals(new String(chars1));
    }
}
